package cn.wolfcode.wms.mapper;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;

import cn.wolfcode.wms.domain.SystemMenu;
import cn.wolfcode.wms.query.QueryObject;

public interface SystemMenuMapper {

	
	/**
	 * 保存系统菜单信息
	 * @param systemmenu 封装系统菜单信息的对象
	 */
	void save(SystemMenu systemmenu);
	
	/**
	 * 删除系统菜单信息
	 * @param id 需要删除的系统菜单编号
	 */
	void delete(Long id);
	
	/**
	 * 更新系统菜单信息
	 * @param systemmenu 需要更新的系统菜单编号
	 */
	void update(SystemMenu systemmenu);
	
	/**
	 * 查询一条系统菜单信息
	 * @param id 需要查询的系统菜单编号
	 * @return 如果查到返回系统菜单对象,否则返回null
	 */
	SystemMenu get(Long id);
	
	/** 
	 * 查询分页系统菜单信息
	 * @return 如果查到返回系统菜单信息的list集合,否则返回空的集合
	 */
	List<SystemMenu> list();

	int queryForCount(QueryObject qo);

	List<SystemMenu> queryForList(QueryObject qo);

	List<Map<String, Object>> selectByParentSn(String parentSn);

	List<Map<String, Object>> selectByParentSnAndEmpId(@Param("parentSn")String parentSn, @Param("empId")Long empId);
}
